When performing a backup task, parallel backup streams are used to speed up the backup task. However if too many backup streams are executed in parallel to perform the backup task, the backup task can take longer than executing a lower number of backup streams in parallel. For example, a large number of backup streams can cause disk head thrashing and/or overloading of computational resources. To prevent the potential execution of too many parallel streams, an upper limit on the total number of parallel backup streams can be specified in some systems. Since the upper limit will likely be associated with the slowest bottleneck instance of a system (e.g. disk#001 out of five disks #001-#005), additional backup streams that do not utilize that bottleneck instance may not be executed if the upper limit is reached. This can lead to under utilization of some backup components and below-optimal aggregate backup throughput. Therefore there exists a need for a flexible way to aggregate backup throughput.